Adjoint Algorithmic Differentiation of a GPU Accelerated Application
نویسندگان
چکیده
We consider a GPU accelerated program using Monte Carlo simulation to price a basket call option on 10 FX rates driven by a 10 factor local volatility model. We develop an adjoint version of this program using algorithmic differentiation. The code uses mixed precision. For our test problem of 10,000 sample paths with 360 Euler time steps, we obtain a runtime of 522ms to compute the gradient of the price with respect to the 438 input parameters, the vast majority of which are the market observed implied volatilities (the equivalent single threaded tangent-linear code on a CPU takes 2hrs).
منابع مشابه
Fast Estimates of Greeks from American Options: A Case Study in Adjoint Algorithmic Differentiation
In this article algorithmic differentiation is applied to compute the sensitivities of the price of an American option, which is computed by the Longstaff-Schwartz algorithm. Adjoint algorithmic differentiation methods speed up the calculation and make the results more accurate and robust compared to a finite difference approximation. However, adjoint computations require more memory due to the...
متن کاملA modern compiler infrastructure for deep learning systems with adjoint code generation in a domain-specific IR
Deep learning software demands reliability and performance. However, many of the existing deep learning frameworks are software libraries that act as an unsafe DSL in Python and a computation graph interpreter, some with inefficient algorithmic differentiation by operator overloading. We present DLVM, a design and implementation of a compiler infrastructure with a linear algebra intermediate re...
متن کاملDLVM: A modern compiler framework for neural network DSLs
Deep learning software demands reliability and performance. We present DLVM, a design and implementation of a compiler infrastructure with a linear algebra intermediate representation, algorithmic differentiation by adjoint code generation, domain-specific optimizations and a code generator targeting GPU via LLVM. Designed as a modern compiler framework inspired by LLVM, DLVM is more modular an...
متن کاملSymbolic vs. Algorithmic Differentiation of GSL Integration Routines
Forward and reverse modes of algorithmic differentiation (AD) transform implementations of multivariate vector functions F : IR → IR as computer programs into tangent and adjoint code, respectively. The adjoint mode is of particular interest in large-scale functions due to the independence of its computational cost on the number of free variables. The additional memory requirement for the compu...
متن کاملAdjoint Algorithmic Differentiation: Calibration and Implicit Function Theorem
Adjoint Algorithmic Differentiation is an efficient way to obtain financial instrument price derivatives with respect to the data inputs. Often the differentiation does not cover the full pricing process when a model calibration is performed. Thanks to the implicit function theorem, the differentiation of the solver embedded in the calibration is not required to differentiate to full pricing pr...
متن کامل